package tech.aistar.mapper.deamnd;


import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.springframework.stereotype.Repository;
import tech.aistar.entity.Demand;


import java.util.List;

/**
 * Created by 豆梦寒 on 2019/9/27.
 */
@Repository
public interface DemandMapper {
    /**
     * 查询所有的需求类别
     * @return
     */
    @Select("select * from demand")
    List<Demand> findAll();

    /**
     * 爽哥专用
     * @return
     */
    @Select("select intro,price from demand where id = #{id}")
    void  findInPr(Integer id);

    /**
     * 根据id进行查找需求
     * @param
     */
    @Select("select * from demand where userinfo_id = #{userinfo_id}")
    List<Demand> findById(Integer userinfo_id);

    /**
     * 根据id进行查找需求
     * @param
     */
    @Select("select * from demand where id = #{id}")
    Demand findByd(Integer id);

    /**
     * 根据id进行查找intro,price
     * @param
     */
    @Select("select intro,price from demand where id = #{id}")
    List<Demand> finduserByid(Integer id);
    /**
     * 添加需求
     */
    void add(Demand demand);

    /**
     * 通过ID修改 信息
     */
    void updateDemand(Demand demand);


    /**
     * 根据ID删除需求的信息
     * @param id
     */
    @Update("update demand set status = 1 where id = #{value}")
    void deletDemand(Integer id);

    /**
     * 通过ID删除需求
     */
    @Delete("delete from demand where id = #{id}")
    List<Demand> delById(Integer id);

    //分页
    PageInfo<Demand> find(Integer pageNum, Integer pageSize);
}
